/**
 */
package gatperdut.chato.model.Chato.Room;

import gatperdut.chato.model.Chato.Item.BoxInventory;
import org.eclipse.emf.cdo.CDOObject;

/**
 * <!-- begin-user-doc -->
 * A representation of the model object '<em><b>Room</b></em>'.
 * <!-- end-user-doc -->
 *
 * <p>
 * The following features are supported:
 * <ul>
 *   <li>{@link gatperdut.chato.model.Chato.Room.Room#getTitle <em>Title</em>}</li>
 *   <li>{@link gatperdut.chato.model.Chato.Room.Room#getDescription <em>Description</em>}</li>
 *   <li>{@link gatperdut.chato.model.Chato.Room.Room#getN <em>N</em>}</li>
 *   <li>{@link gatperdut.chato.model.Chato.Room.Room#getE <em>E</em>}</li>
 *   <li>{@link gatperdut.chato.model.Chato.Room.Room#getS <em>S</em>}</li>
 *   <li>{@link gatperdut.chato.model.Chato.Room.Room#getW <em>W</em>}</li>
 *   <li>{@link gatperdut.chato.model.Chato.Room.Room#getU <em>U</em>}</li>
 *   <li>{@link gatperdut.chato.model.Chato.Room.Room#getD <em>D</em>}</li>
 *   <li>{@link gatperdut.chato.model.Chato.Room.Room#getDN <em>DN</em>}</li>
 *   <li>{@link gatperdut.chato.model.Chato.Room.Room#getDE <em>DE</em>}</li>
 *   <li>{@link gatperdut.chato.model.Chato.Room.Room#getDS <em>DS</em>}</li>
 *   <li>{@link gatperdut.chato.model.Chato.Room.Room#getDW <em>DW</em>}</li>
 *   <li>{@link gatperdut.chato.model.Chato.Room.Room#getDU <em>DU</em>}</li>
 *   <li>{@link gatperdut.chato.model.Chato.Room.Room#getDD <em>DD</em>}</li>
 *   <li>{@link gatperdut.chato.model.Chato.Room.Room#getInventory <em>Inventory</em>}</li>
 * </ul>
 * </p>
 *
 * @see gatperdut.chato.model.Chato.Room.RoomPackage#getRoom()
 * @model
 * @extends CDOObject
 * @generated
 */
public interface Room extends CDOObject {
	/**
     * Returns the value of the '<em><b>Title</b></em>' attribute.
     * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Title</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
     * @return the value of the '<em>Title</em>' attribute.
     * @see #setTitle(String)
     * @see gatperdut.chato.model.Chato.Room.RoomPackage#getRoom_Title()
     * @model required="true"
     * @generated
     */
	String getTitle();

	/**
     * Sets the value of the '{@link gatperdut.chato.model.Chato.Room.Room#getTitle <em>Title</em>}' attribute.
     * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
     * @param value the new value of the '<em>Title</em>' attribute.
     * @see #getTitle()
     * @generated
     */
	void setTitle(String value);

	/**
     * Returns the value of the '<em><b>Description</b></em>' attribute.
     * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Description</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
     * @return the value of the '<em>Description</em>' attribute.
     * @see #setDescription(String)
     * @see gatperdut.chato.model.Chato.Room.RoomPackage#getRoom_Description()
     * @model required="true"
     * @generated
     */
	String getDescription();

	/**
     * Sets the value of the '{@link gatperdut.chato.model.Chato.Room.Room#getDescription <em>Description</em>}' attribute.
     * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
     * @param value the new value of the '<em>Description</em>' attribute.
     * @see #getDescription()
     * @generated
     */
	void setDescription(String value);

	/**
     * Returns the value of the '<em><b>N</b></em>' reference.
     * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>N</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
     * @return the value of the '<em>N</em>' reference.
     * @see #setN(Room)
     * @see gatperdut.chato.model.Chato.Room.RoomPackage#getRoom_N()
     * @model
     * @generated
     */
	Room getN();

	/**
     * Sets the value of the '{@link gatperdut.chato.model.Chato.Room.Room#getN <em>N</em>}' reference.
     * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
     * @param value the new value of the '<em>N</em>' reference.
     * @see #getN()
     * @generated
     */
	void setN(Room value);

	/**
     * Returns the value of the '<em><b>E</b></em>' reference.
     * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>E</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
     * @return the value of the '<em>E</em>' reference.
     * @see #setE(Room)
     * @see gatperdut.chato.model.Chato.Room.RoomPackage#getRoom_E()
     * @model
     * @generated
     */
	Room getE();

	/**
     * Sets the value of the '{@link gatperdut.chato.model.Chato.Room.Room#getE <em>E</em>}' reference.
     * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
     * @param value the new value of the '<em>E</em>' reference.
     * @see #getE()
     * @generated
     */
	void setE(Room value);

	/**
     * Returns the value of the '<em><b>S</b></em>' reference.
     * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>S</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
     * @return the value of the '<em>S</em>' reference.
     * @see #setS(Room)
     * @see gatperdut.chato.model.Chato.Room.RoomPackage#getRoom_S()
     * @model
     * @generated
     */
	Room getS();

	/**
     * Sets the value of the '{@link gatperdut.chato.model.Chato.Room.Room#getS <em>S</em>}' reference.
     * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
     * @param value the new value of the '<em>S</em>' reference.
     * @see #getS()
     * @generated
     */
	void setS(Room value);

	/**
     * Returns the value of the '<em><b>W</b></em>' reference.
     * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>W</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
     * @return the value of the '<em>W</em>' reference.
     * @see #setW(Room)
     * @see gatperdut.chato.model.Chato.Room.RoomPackage#getRoom_W()
     * @model
     * @generated
     */
	Room getW();

	/**
     * Sets the value of the '{@link gatperdut.chato.model.Chato.Room.Room#getW <em>W</em>}' reference.
     * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
     * @param value the new value of the '<em>W</em>' reference.
     * @see #getW()
     * @generated
     */
	void setW(Room value);

	/**
     * Returns the value of the '<em><b>U</b></em>' reference.
     * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>U</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
     * @return the value of the '<em>U</em>' reference.
     * @see #setU(Room)
     * @see gatperdut.chato.model.Chato.Room.RoomPackage#getRoom_U()
     * @model
     * @generated
     */
	Room getU();

	/**
     * Sets the value of the '{@link gatperdut.chato.model.Chato.Room.Room#getU <em>U</em>}' reference.
     * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
     * @param value the new value of the '<em>U</em>' reference.
     * @see #getU()
     * @generated
     */
	void setU(Room value);

	/**
     * Returns the value of the '<em><b>D</b></em>' reference.
     * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>D</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
     * @return the value of the '<em>D</em>' reference.
     * @see #setD(Room)
     * @see gatperdut.chato.model.Chato.Room.RoomPackage#getRoom_D()
     * @model
     * @generated
     */
	Room getD();

	/**
     * Sets the value of the '{@link gatperdut.chato.model.Chato.Room.Room#getD <em>D</em>}' reference.
     * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
     * @param value the new value of the '<em>D</em>' reference.
     * @see #getD()
     * @generated
     */
	void setD(Room value);

	/**
     * Returns the value of the '<em><b>DN</b></em>' reference.
     * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>DN</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
     * @return the value of the '<em>DN</em>' reference.
     * @see #setDN(Door)
     * @see gatperdut.chato.model.Chato.Room.RoomPackage#getRoom_DN()
     * @model
     * @generated
     */
	Door getDN();

	/**
     * Sets the value of the '{@link gatperdut.chato.model.Chato.Room.Room#getDN <em>DN</em>}' reference.
     * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
     * @param value the new value of the '<em>DN</em>' reference.
     * @see #getDN()
     * @generated
     */
	void setDN(Door value);

	/**
     * Returns the value of the '<em><b>DE</b></em>' reference.
     * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>DE</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
     * @return the value of the '<em>DE</em>' reference.
     * @see #setDE(Door)
     * @see gatperdut.chato.model.Chato.Room.RoomPackage#getRoom_DE()
     * @model
     * @generated
     */
	Door getDE();

	/**
     * Sets the value of the '{@link gatperdut.chato.model.Chato.Room.Room#getDE <em>DE</em>}' reference.
     * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
     * @param value the new value of the '<em>DE</em>' reference.
     * @see #getDE()
     * @generated
     */
	void setDE(Door value);

	/**
     * Returns the value of the '<em><b>DS</b></em>' reference.
     * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>DS</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
     * @return the value of the '<em>DS</em>' reference.
     * @see #setDS(Door)
     * @see gatperdut.chato.model.Chato.Room.RoomPackage#getRoom_DS()
     * @model
     * @generated
     */
	Door getDS();

	/**
     * Sets the value of the '{@link gatperdut.chato.model.Chato.Room.Room#getDS <em>DS</em>}' reference.
     * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
     * @param value the new value of the '<em>DS</em>' reference.
     * @see #getDS()
     * @generated
     */
	void setDS(Door value);

	/**
     * Returns the value of the '<em><b>DW</b></em>' reference.
     * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>DW</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
     * @return the value of the '<em>DW</em>' reference.
     * @see #setDW(Door)
     * @see gatperdut.chato.model.Chato.Room.RoomPackage#getRoom_DW()
     * @model
     * @generated
     */
	Door getDW();

	/**
     * Sets the value of the '{@link gatperdut.chato.model.Chato.Room.Room#getDW <em>DW</em>}' reference.
     * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
     * @param value the new value of the '<em>DW</em>' reference.
     * @see #getDW()
     * @generated
     */
	void setDW(Door value);

	/**
     * Returns the value of the '<em><b>DU</b></em>' reference.
     * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>DU</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
     * @return the value of the '<em>DU</em>' reference.
     * @see #setDU(Door)
     * @see gatperdut.chato.model.Chato.Room.RoomPackage#getRoom_DU()
     * @model
     * @generated
     */
	Door getDU();

	/**
     * Sets the value of the '{@link gatperdut.chato.model.Chato.Room.Room#getDU <em>DU</em>}' reference.
     * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
     * @param value the new value of the '<em>DU</em>' reference.
     * @see #getDU()
     * @generated
     */
	void setDU(Door value);

	/**
     * Returns the value of the '<em><b>DD</b></em>' reference.
     * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>DD</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
     * @return the value of the '<em>DD</em>' reference.
     * @see #setDD(Door)
     * @see gatperdut.chato.model.Chato.Room.RoomPackage#getRoom_DD()
     * @model
     * @generated
     */
	Door getDD();

	/**
     * Sets the value of the '{@link gatperdut.chato.model.Chato.Room.Room#getDD <em>DD</em>}' reference.
     * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
     * @param value the new value of the '<em>DD</em>' reference.
     * @see #getDD()
     * @generated
     */
	void setDD(Door value);

	/**
     * Returns the value of the '<em><b>Inventory</b></em>' containment reference.
     * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Inventory</em>' containment reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
     * @return the value of the '<em>Inventory</em>' containment reference.
     * @see #setInventory(BoxInventory)
     * @see gatperdut.chato.model.Chato.Room.RoomPackage#getRoom_Inventory()
     * @model containment="true" required="true" ordered="false"
     * @generated
     */
	BoxInventory getInventory();

	/**
     * Sets the value of the '{@link gatperdut.chato.model.Chato.Room.Room#getInventory <em>Inventory</em>}' containment reference.
     * <!-- begin-user-doc -->
     * <!-- end-user-doc -->
     * @param value the new value of the '<em>Inventory</em>' containment reference.
     * @see #getInventory()
     * @generated
     */
    void setInventory(BoxInventory value);

} // Room
